﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using Microsoft.Phone.Controls;
using System.IO;
using System.Xml.Linq;
using Microsoft.Phone.Tasks;

namespace PanoramaApp1
{
    public partial class MainPage : PhoneApplicationPage
    {
        MediaPlayerLauncher mpl = new MediaPlayerLauncher();

        // Constructor
        public MainPage()
        {
            InitializeComponent();

            // Set the data context of the listbox control to the sample data
            DataContext = App.ViewModel;
            this.Loaded += new RoutedEventHandler(MainPage_Loaded);

            mpl.Controls = MediaPlaybackControls.All;
            mpl.Orientation = MediaPlayerOrientation.Landscape;
        }

        // Load data for the ViewModel Items
        private void MainPage_Loaded(object sender, RoutedEventArgs e)
        {
            if (!App.ViewModel.IsDataLoaded)
            {
                App.ViewModel.ReadRss();
                App.ViewModel.LaddaMainPageRadioOmråden();
            }
        }

        /// <summary>
        /// Används inte längre
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void ListBox_Tap(object sender, GestureEventArgs e)
        {
            //ListBox lstBox = (ListBox)sender;
            //OmrådeEnums område = (OmrådeEnums)Enum.Parse(typeof(OmrådeEnums), App.ViewModel.UriItems[lstBox.SelectedIndex].LineOmråde, true);
            //App.ViewModel.Område = område;
               
            //App.ViewModel.ReadRss();
        }

        private void lstBoxPage2_Tap(object sender, GestureEventArgs e)
        {              
            if (App.ViewModel.Player.CurrentState == MediaElementState.Playing)
            {
                App.ViewModel.Player.Stop();
                for (int i = 0; i < LayoutRoot.Children.Count; i++)
                {
                    if (LayoutRoot.Children[i] is MediaElement)
                    {
                        LayoutRoot.Children.Remove(LayoutRoot.Children[i]);
                    }
                }                
            }

            ListBox lstBox = (ListBox)sender;
            string url = App.ViewModel.Items[lstBox.SelectedIndex].LineTwo;
            App.ViewModel.Player.Source = new Uri(url, UriKind.Absolute);
            //LayoutRoot.Children.Add(App.ViewModel.Player);//Används när man inte kör med mediaplayerlauncher
           
//            App.ViewModel.Player.Play();
            
            mpl.Media = App.ViewModel.Player.Source;
            
            
            mpl.Show();
            txtBlockNyheter.Text = App.ViewModel.Items[lstBox.SelectedIndex].LineOne;
            //SidaSpelare ss = new SidaSpelare();
            //NavigationService.Navigate(new Uri("/SidaSpelare.xaml", UriKind.RelativeOrAbsolute));
        }

        private void testknapp_Tap(object sender, GestureEventArgs e)
        {
            HyperlinkButton btn = (HyperlinkButton)sender;//Gör en knapp av sender

            App.ViewModel.Område = (OmrådeEnums)Enum.Parse(typeof(OmrådeEnums), btn.Content.ToString(), true);//Sätt området till värdet av knappens content
            
            App.ViewModel.ReadRss();//Läs in RSS-listan och visa i page2

            
            

            #region skräptestgrejor
            //ListBox lstbox = (ListBox)btn.Parent;
            //ListBox lstbox = null;
            //TextBlock txtb = null;


            //for (int i = 0; i < this.lstBoxMainContent.Items.Count; i++)
            //{
            //    if (lstBoxMainContent.Items[i] == btn)
            //    {
            //        App.ViewModel.Område = (OmrådeEnums)Enum.Parse(typeof(OmrådeEnums), App.ViewModel.UriItems[i].LineOmråde, true);
            //    }
            //}

            //ListBox lstBox = (ListBox)sender;
            //OmrådeEnums område = (OmrådeEnums)Enum.Parse(typeof(OmrådeEnums), App.ViewModel.UriItems[lstBox.SelectedIndex].LineOmråde, true);
            //App.ViewModel.Område = område;

            //App.ViewModel.ReadRss();

            //foreach (Object lb in this.lstBoxMainContent.Items)
            //{
            //    if(lb.Items.Contains(btn))
            //    {
            //        lstbox = lb;
            //        break;
            //    }
            //}

            //OmrådeEnums område = (OmrådeEnums)Enum.Parse(typeof(OmrådeEnums), App.ViewModel.UriItems[lstbox.SelectedIndex].LineOmråde, true);
            //App.ViewModel.Område = område;
            #endregion            
        }        
    }
}